package com.yunyouyi.cpicture.domain.space.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yunyouyi.cpicture.domain.space.entity.Space;
import com.yunyouyi.cpicture.domain.user.entity.User;
import com.yunyouyi.cpicture.interfaces.dto.space.SpaceQueryDTO;


/**
* @author yunyouyi
* @description 针对表【space(空间)】的数据库操作Service
* @createDate 2025-04-18 09:56:29
*/
public interface SpaceDomainService {


    /**
     * 获取查询对象
     *
     * @param spaceQueryDTO
     * @return
     */
    QueryWrapper<Space> getQueryWrapper(SpaceQueryDTO spaceQueryDTO);


    /**
     * 根据空间等级填充空间信息
     * @param space
     */
    void fillSpaceBySpaceLevel(Space space);

    /**
     * 校验用户对空间是否有权限
     * @param loginUser
     * @param space
     */
    void checkSpaceAuth(User loginUser, Space space);
}
